set(LLVM_TARGET_DEFINITIONS HIVMOps.td)
mlir_tablegen(HIVMDialect.h.inc -gen-dialect-decls -dialect=hivm)
mlir_tablegen(HIVMDialect.cpp.inc -gen-dialect-defs -dialect=hivm)
mlir_tablegen(HIVMOps.h.inc -gen-op-decls)
mlir_tablegen(HIVMOps.cpp.inc -gen-op-defs)
add_public_tablegen_target(MLIRHIVMIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMInterfaces.td)
mlir_tablegen(HIVMInterfaces.h.inc -gen-op-interface-decls)
mlir_tablegen(HIVMInterfaces.cpp.inc -gen-op-interface-defs)
add_public_tablegen_target(MLIRHIVMInterfacesIncGen)
add_dependencies(mlir-headers MLIRHIVMInterfacesIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMDMAOps.td)
mlir_tablegen(HIVMDMAOps.h.inc -gen-op-decls)
mlir_tablegen(HIVMDMAOps.cpp.inc -gen-op-defs)
add_public_tablegen_target(MLIRHIVMDMAOpsIncGen)
add_dependencies(mlir-headers MLIRHIVMDMAOpsIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMVectorOps.td)
mlir_tablegen(HIVMVectorOps.h.inc -gen-op-decls)
mlir_tablegen(HIVMVectorOps.cpp.inc -gen-op-defs)
add_public_tablegen_target(MLIRHIVMVectorOpsIncGen)
add_dependencies(mlir-headers MLIRHIVMVectorOpsIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMSynchronizationOps.td)
mlir_tablegen(HIVMSynchronizationOps.h.inc -gen-op-decls)
mlir_tablegen(HIVMSynchronizationOps.cpp.inc -gen-op-defs)
add_public_tablegen_target(MLIRHIVMSynchronizationOpsIncGen)
add_dependencies(mlir-headers MLIRHIVMSynchronizationOpsIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMMacroOps.td)
mlir_tablegen(HIVMMacroOps.h.inc -gen-op-decls)
mlir_tablegen(HIVMMacroOps.cpp.inc -gen-op-defs)
add_public_tablegen_target(MLIRHIVMMacroOpsIncGen)
add_dependencies(mlir-headers MLIRHIVMMacroOpsIncGen)

set(LLVM_TARGET_DEFINITIONS HIVMAttrs.td)
mlir_tablegen(HIVMEnums.h.inc -gen-enum-decls)
mlir_tablegen(HIVMEnums.cpp.inc -gen-enum-defs)
mlir_tablegen(HIVMAttrs.h.inc -gen-attrdef-decls -attrdefs-dialect=hivm)
mlir_tablegen(HIVMAttrs.cpp.inc -gen-attrdef-defs -attrdefs-dialect=hivm)
mlir_tablegen(HIVMTypes.h.inc -gen-typedef-decls -typedefs-dialect=hivm)
mlir_tablegen(HIVMTypes.cpp.inc -gen-typedef-defs -typedefs-dialect=hivm)
add_public_tablegen_target(MLIRHIVMEnumsIncGen)
add_public_tablegen_target(MLIRHIVMAttributesIncGen)
add_dependencies(mlir-headers MLIRHIVMEnumsIncGen)
add_dependencies(mlir-headers MLIRHIVMAttributesIncGen)
